package bz.ziro.kanbe.bean;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import bz.ziro.kanbe.dao.SiteFileDao;
import bz.ziro.kanbe.model.SiteFile;

/**
 * ファイルデータ
 * @author Administrator
 */
public class FileData {

    /**
     * ファイルマップデータ
     */
    private static Map<String,Map<String,String>> gblFileMap = null;

    /**
     * ファイルマップの取得
     * @param aKey
     * @return
     */
    public Map<String,String> get(String aKey) {
    	//ファイルマップが存在しなかった場合
    	if ( gblFileMap == null ) {
     	   refreshFileMap();
    	}
    	return gblFileMap.get(aKey);
    }

    /**
     * ファイル再検索
     */
    public static void refreshFileMap() {

        gblFileMap = new HashMap<String,Map<String,String>>();
        List<SiteFile> fileList = SiteFileDao.all();

        //テキスト数回繰り返す
        for ( SiteFile file : fileList ) {
            Map<String,String> fileMap = new HashMap<String,String>();
            fileMap.put("name", file.getName());
            fileMap.put("detail", file.getDetail());
            fileMap.put("type", file.getType());
            fileMap.put("url", "/file/?key=" + file.getKey().getId());
            gblFileMap.put(String.valueOf(file.getKey().getId()), fileMap);
        }
    }
}
